/**
 * 作者: solin
 * 时间: 2017年11月23日 上午9:49:27
 */

$(function(){
	//拍照按钮
	var btnTakePicture = $('#btnTakePicture');
	//选择相册按钮
	var btnAlbum = $('#btnAlbum');
	
	wx.config({
		debug : false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。
		appId : $('#appId').val(), // 必填，公众号的唯一标识
		timestamp : $('#timestamp').val(), // 必填，生成签名的时间戳
		nonceStr : $('#nonceStr').val(), // 必填，生成签名的随机串
		signature : $('#signature').val(),// 必填，签名
		jsApiList : [ 'chooseImage', 'uploadImage' ] // 必填，需要使用的JS接口列表，所有JS接口列表
	});
	
	wx.ready(function(){
		btnTakePicture.on('click', function() {
			takePicture( ['camera']);
		})
		btnAlbum.on('click', function() {
			takePicture( ['album']);
		})
	});
	
	//显示/隐藏选择相册或拍照选项
	$('#yyzz_btn,#upload_yyzz .upload_yyzz_2 ul li a').click(function(){
		$('#upload_yyzz').toggle();
	});
})
		
/**
* 拍照/选择图片
*/
function takePicture(sourceType){
	wx.chooseImage({
		count: 1, // 默认9
		sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图，默认二者都有
		sourceType: sourceType, // 可以指定来源是相册还是相机，默认二者都有 ['album', 'camera']
		success: function (res) {
			var localIds = res.localIds; // 返回选定照片的本地ID列表，localId可以作为img标签的src属性显示图片
			//上传到微信服务器
			wx.uploadImage({
				localId: localIds.toString(), // 需要上传的图片的本地ID，由chooseImage接口获得
				isShowProgressTips: 1, // 默认为1，显示进度提示
				success: function (res) {
					var mediaId = res.serverId; // 返回图片的服务器端ID，即mediaId
					//上传到阿里云服务器(或者保存到本地服务器)
					$.post(rootPath + "/wx/upload/picture", { mediaId : mediaId }, //将获取到的 mediaId 传入后台 方法
						function(res) {
							if (res.resultCode == '1') {
								var fileName = imgRootURL + res.filePath;
								$('#headImage').attr('src', fileName);
								//将图片路径保存到数据库
								savePictureToDB(res.filePath);
							} else {
								$('#upload_yyzz').hide();
								showMsg(res.resultMsg);
							}
						})
				},
				fail : function(res) {
					$('#upload_yyzz').hide();
					showMsg('上传图片失败，请重试')
				}
			});
		}
	});
}

/**
 * 将微信上传的图片（阿里云图片地址）保存到数据库 
 */
function savePictureToDB(filePath){
	var url = rootPath + "/wx/my/setting/saveUploadPicture";
	$.post(url, {filePath: filePath, customerId: $('#customerId').val()}, function(res){
		$('#upload_yyzz').hide();
		if (res.resultCode != '1') {
			showMsg(res.resultMsg);
		}
	})
}